Word processor with means for programming indented paragraph format

ABSTRACT

The invention relates to a word processor of the type utilizing a typewriter as an input/output printer, and comprises indented paragraph typewriter programming and control means for causing the typewriter to establish and maintain a desired indented paragraph format.

United States Patent [1 1 Martin 1 1 Sept. 24, 1974 1 WORD PROCESSOR WITH MEANS FOR PROGRAMMING INDENTED PARAGRAPH FORMAT [75] Inventor: Peter G. Martin, Arlington, Mass. [73] Assignee: Arthur D. Little, Inc., Cambridge,

Mass.

[22] Filed: Dec. 4, 1972 [21] Appl. No.: 311,451

[52] US. Cl. 197/19, 340/1725 [51] Int. Cl 8411 5/30 [58] Field of Search 197/1, 19, 20; 340/1725,

[56] References Cited UNITED STATES PATENTS 3,063,536 11/1962 Dirks 197/19 3,260,340 7/1966 Locklar cl a1. 197/19 3,294,956 12/1966 Jenkins et a1. 235/619 3,297,124 1/1967 Sims 197/19 3,413,624 11/1968 Murdoch et a1 ..340/l74.1 3,579,193 5/1971 Bernier 340/1725 3,674,125 7/1972 Kolpeic 340/174.1 X

Primary Examiner-Robert E. Pulfrey Assistant Examiner-R. T. Radar Attorney, Agent, or Firm-Schiller & Pandiscio [5 7 ABSTRACT The invention relates to a word processor of the type utilizing a typewriter as an input/output printer, and comprises indented paragraph typewriter programming and control means for causing the typewriter to establish and maintain a desired indented paragraph format.

26 Claims, 21 Drawing Figures Pmmmww 3.837. 459

saw 01 or 19 FIG. I.

PATENIEB 59241974 SHEET 05 N19 S 3 3 O N G S n 8 S O V H. A

AHVIOISBFIS LSBH w mi m P; 4?

PDaPDO mmkwawm PAIENIEHSEPZWH 3.887.459

sum 0a or 19 n J1 J1 J1 II n n 11 X J n n n J J1 J1 X2 n n H II J J n c l' 'l MAIN BUFFER zI A I B I c I 0 IBLANKI'Y I OUTPUT FIRST gugT Z I A I B I C I D IBLANKI Y I E /HELD CLEAR SECOND IAIBICIDIBLANKIY Am FER I Y I A I B I C I D I BLANK I Y INPUT CELL FY6614.

CLOCKWWW I X 11 n J n n n n FL X3 11 JI H II n J n I x H I Fl J1 J1 Fl J CHANGE ORDER (3 11 MAIN BUFFERZI BLANK I BLANK I A I B I c I Y Iz OUTPUT FIRST I z I BLANK I BLANK I A I B I c I Y I I HELDCLEAR sscowo I z IBLANKI BLANK I A I B I C I Y MAI BUFFEIII YIZ IBLANKIAIBICIY PATENTED 3. 837. 459

SHEU 09 0F 19 CIOCK WFLFLFLFLHM I J'I J n n J 11 FL I x Fl nI Fl J J r1 n x J J I n n J J J CHANGE ORDER c n NIAIN Z A BAK B C D Z 53%| I LN I I l I Y I S U JI z I A I I B I c I o Y I 5556 [HELD CLEAR su EI I Z I A IBLANKI B C I D I Y REG.

B II FE EIE I Y I Z IBLANKI B I C I D IY CELL FIG. 6C.

CLOCKJLHJLIUWW XII-I J II D H H H JL I X n J J J n J J x II H: 1''] J Fl J Fl cIIANsE ORDER C D MAIN UFF Z I BLANKI A I B I C I D I BLANK IBLANK OUTPUI EE I Z I BLANK I A I B I C I D I BLANK SEEENEQHI Z I BLANK I -A I B I c I D IBLANK I Z IBLANKI BLANK A I B C I D CELL FY6160.

Palmsnszrzmn V 3.837.459

mm mar 19 c ICG PATENTEDSEPZMBH 3,837, 459

sum 12 nr 19 "A TAB/F FORCE SP ENABLE FORCE BSP FORCE CR GATES CIM PIM

ANY FUNC- TION FROM KEYBOARD DELAY PULSES esp CR 2 ENABLE CI OPERATOR f c1 TAB TAB GATES DECODER Z mes T TABCL ENABLE GATES TO DATA SELECTOR '0 u: -q :4 20 2360 33 D FROM REGISTER 94 PARTTY CHECKER PATENIEU 3. 837, 459

PRiNT j3 MODE ,44

3/7 3/6 CR AT B/O K NORMAL 20] SH'FT 322 i J TO TYPE IN BLAN K CELL AT B/O NORMAL INSERT Rv 326 31'! CYCLE WEE? D 375 Y\ 201 sHaF/T 328 J 147 I I R 332 INSERT CYCLE 0 WITH FU NCTiON [D4 OVERFLOW FROM K/B i RIM 306 TERMINATE SHIFT 344 342 i COUNTER C 1 338 339 340 Q BUFFER Pmmuwwm 3.837.459

saw an BF I9 R1 R2 OW RZA SHIFT R5 REGISTER I DEMULTI- T PLEXER 2 46 368 S i p -26? FORWARDI L 359 354 352/ L 374 cofifi ER a I 47 l jlg 356 /360 DATA CONVERTER BLOCK 364 /1 378/ MONO 77 f28 MoToR DISPLAY DRIVE r356 586 CIRCUITS [240 READ/WRITE 235' 242 M CASSETTE HEAD PATENTEU 532M974 3-837, 459

Sim 17 F 19 D Q 443 5- 199 SHIFT I45 c 0 v [/69 465 472 TERJINATE & SHlFT 1/- 584 452 w) TAB/04f MOVE LEFT OVER TAB I FORCE SP BsP/og s Q sP/s f R 6 532 FORCE BSP FR/O 459 534 S Q sp/oij" R 6 53a esp/s 455 535 PAIENTED 2 3.837. 459

SHEET '19 0F 19 sTER LEFT OvER TAB 584 ANY TARE sEARCH 770 NW 582 PRINT MODE 570 418 KIP S 572 CR/O 576 S-BIT AT 578 BUFFER 580 O/P LEAR 600 C 620 4-BIT TABR COUNTER COUNTER CR/s 4-BIT TABR TAB TAB/S 5/2 COMPAR Z608 ATOR TAB/O E 3 575 4-BIT TABx COUNTER COUNTER JCLEAR v D 0 E J 0 g T 632 C SH/S .L C Q K Q J I I i 626 PiM/S FIG 16. 

1. Word processing and printing apparatus comprising: a printer, a recording apparatus, data transfer means for controlling the transfer of data between said printer and said recording apparatus, and indented paragraph programming and control means for establishing and maintaining an indented paragraph format; said printer comprising a holder for a record medium; printing means for printing characters on said record medium; said holder and printing means being adapted for relative movement, printer advancing means slectively operable to produce (a) bidirectional relative movement of said holder and printing means along a first axis so as to permit said printing means to print characters on said record as a line of characters extending along said first axis and (b) relative movement of said holder and pRinting means along a second axis so as to permit said printing means to print characters on said record in a line by line format; a plurality of informational character and function keys; character operator means responsive to operation of said character keys for operating said printing means and said printer advancing means so as to cause said printing means to print selected characters as a line of characters along said first axis; function operator means responsive to operation of said function keys for causing said printer to execute selected functions according to the function key that is operated, said function keys including a Return key, a Tab key and a Shift key; said function operator means including first means responsive to operation of said Return key for operating said printer advancing means so as to position said printing means and said holder relative to one another at a predetermined left hand margin position along said first axis and also to produce an increment of relative movement of said printing means and said holder along said second axis whereby said printer is ready to print a new line of characters, and second means responsive to operation of said Tab key for operating said printer advancing means so as to relatively reposition said printing means and said holder a preselected distance along said first axis away from said left hand margin position each time said Tab key is operated; code generating means responsive to operation of any of said keys for generating codes representative of the characters or functions corresponding to the keys that are operated, including a Return code, a Tab code and a Shift code; means responsive to operation of said Shift key for enabling said code generating means to generate a Required Return code and a Required Tab code on operation of said Return and Tab keys respectively; and playback printer operating means including means responsive to previously generated character and function codes for operating said printer so as to print the characters and perform the functions represented by said previously generated codes; said recording apparatus comprising storage means for storing a plurality of said character and function codes, said storage means having input and output means; said data transfer means comprising selectively operable means for applying codes generated by said printer code generating means to said storage means, and selectively operable means for applying the codes appearing at the output means of said storage means to said playback printer operating means; said indented paragraph programming and control means comprising means for generating a Required Tab sensing signal each time a Required Tab code is generated responsively to operation of said Tab key, a Required Tab counter adapted to be incremented responsively to each Required Tab sensing signal, means for generating a Return sensing signal and a Required Return sensing signal each time a Return code and a Required Return code respectively is generated responsively to operation of said Return key, means for clearing said Required Tab counter responsively to a Required Return sensing signal, and means responsive to said Return sensing signal for producing and applying tab-forcing signals to said playback printer operating means to cause said printer advancing means to relatively reposition said printing means and said holder responsively to each such tab-forcing signal until the number of tab-forcing signals so produced and applied equals the count in said counter.
 2. Apparatus according to claim 1 wherein said indented paragraph programming and control means comprises means for incrementing said Required Tab counter each time a Required Tab code appears at the output means of said storage means and is applied to said playback printer operating means, said means for generating a Return sensing signal being adapted to provide a Return sensiNg signal each time a Return code is coupled from the output means of said storage means to said playback printer operating means, means responsive to each said Return sensing signal produced responsively to a Return code appearing at the output means of said storage means for producing and applying tab forcing signals to said playback printer operating means until the number of tab forcing signals so produced and applied equals the count in said Required Tab counter, and means for clearing said Required Tab counter responsively to a Required Return code appearing at the output of said storage means and applied to said playback printer operating means.
 3. Word processing and printing apparatus comprising: a printer, a recording apparatus, data transfer means for controlling the transfer of data between said printer and said recording apparatus, and indented paragraph programming and control means for establishing and maintaining an indented paragraph format; said printer comprising a holder for a record medium; printing means for printing characters on said record medium; said holder and printing means being adapted for relative movement, printer advancing means selectively operable to produce (a) bidirectional relative movement of said holder and printing means along a first axis so as to permit said printing means to print characters on said record as a line of characters extending along said first axis and (b) relative movement of said holder and printing means along a second axis so as to permit said printing means to print characters on said record in a line by line format; a plurality of informational character and function keys; character operator means responsive to operation of said character keys for operating said printing means and said printer advancing means so as to cause said printing means to print selected characters as a line of characters along said first axis; function operator means responsive to operation of said function keys for causing said printer to execute selected functions according to the function key that is operated, said function keys including a Return key and a Tab key; said function operator means including first means responsive to operation of said Return key for operating said printer advancing means so as to position said printing means and said holder relative to one another at a predetermined left hand margin position along said first axis and also to produce an increment of relative moemvement of said printing means and said holder along said second axis whereby said printer is ready to print a new line of characters, and second means responsive to operation of said Tab key for operating said printer advancing means so as to relatively reposition said printing means and said holder a preselected distance along said first axis away from said left hand margin position each time said Tab key is operated; code generating means responsive to operation of any of said keys for generating codes representative of the characters or functions corresponding to the keys that are operated, including a Return code and a Tab code; selectively operable means for enabling said code generating means to generate a Required Return code and a Required Tab code on operation of aid Return and Tab keys respectively; and playback printer operating means including means responsive to previously generated character and function codes for operating said prnter so as to print the characters and perform the functions represented by said previously generated codes; said recording apparatus comprising storage means for storing a plurality of said character and function codes, said storage means having input and output means; said data transfer means comprising selectively operable means for applying codes generated by said printer code generating means to said storage means, and selectively operable means for applying the codes appearing at the output means of said storage means to said playback priNter operating means; said indented paragraph programming and control means comprising means for generating a Required Tab sensing signal each time a Required Tab code is generated responsively to operation of said Tab key, a Required Tab counter adapted to be incremented once responsively to each Required Tab sensing signal, means for generating a Return sensing signal and a Required Return sensing signal each time a Return code and a Required Return code respectively is generated responsively to operating of said Return key, means for clearing said Required Tab counter responsively to a Required Return sensing signal, means responsive to said Return sensing signal for producing and applying tab forcing signals to said playback printer operating means to cause said printer advancing means to relatively reposition said printing means and said holder responsively to each said tab-forcing signal until the number of tab-forcing signals so produced and applied equals the count in said counter, means for incrementing said Required Tab counter each time a Required Tab code appears at the output means of said storage means and is applied to said playback printer operating means, means responsive to positioning of said holder and printing means at said left hand margin position for producing and applying tab-forcing signals to said playback printer operating means until the number of tab-forcing signals so produced and applied equals the count in said Required Tab counter, and means responsive to a Required Return code appearing at the output of said storage means and applied to said playback printer operating means for clearing said Required Tab counter.
 4. Apparatus according to claim 3 wherein said indented paragraph programming and control means comprises means for producing a Tab sensing signal each time a Tab code or a tab-forcing signal is applied to said playback printer operating means, a second counter adapted to be incremented once responsively to each Tab sensing signal, and means for clearing said second counter responsively to relative positioning of said printing means and said holder at said left-hand margin position, and further wherein said means for producing and applying tab-forcing signals to said playback printer operating means comprises comparator means for comparing the count in said Required Tab and second counters, and means for incrementing said second counter each time a tab-forcing signal is applied to said playback printer operating means until the count in said second counter equals the count in said Required Tab counter.
 5. Apparatus according to claim 4 wherein said means for producing said forcing signal comprises a flip-flop, means for toggling said flip-flop to a first state responsively to relative positioning of said printing means and said holder at said left-hand margin position, and means for clearing said flip-flop when the count of said second counter is at least equal to the count of said Required Tab counter.
 6. Apparatus according to claim 3 wherein said selectively operable means for enabling said code generating means to generate a Required Tab code comprises a Shift key.
 7. Apparatus according to claim 3 wherein said printer is an electric typewriter.
 8. Apparatus according to claim 7 wherein said printing means is moveable along said first axis relative to said holder.
 9. Apparatus according to claim 7 wherein said holder comprises a roller platen.
 10. A word processing system comprising a typewriter, a recording apparatus, data transfer means including a buffer memory for controlling the transfer of data between said typewriter and said recording apparatus, and means for automatically programming said typewriter for tabbing so as to provide a predetermined indented paragraph format; said typewriter including a holder for a record medium, printing means moveable relative to said holder, means for indexing said holdEr, a plurality of informational character and function keys including a Return key and a Tab key, character operator means responsive to operation of said informational character keys for operating said printing means to print selected characters in a line extending transversely of said record medium, function operator means responsive to operation of said function keys for performing functions corresponding to the function keys that are operated, said function keys including a Return key and a Tab key, and said function operator means including (a) means responsive to operation of said Return key for returning said printing means to a predetermined left hand margin position and operating said indexing means so that subsequent operation of said informational character keys will cause said printing means to print a new line of characters and (b) means responsive to operation of said Tab key for causing said printing means to shift transversely of said holder away from said left hand margin position a predetermined distance each time said Tab key is operated, means responsive to operation of said keys for generating digital codes representative of characters and functions corresponding to the keys that are operated, and playback typewriter operating means including means responsive to digital informational character and function codes applied thereto for causing said typewriter to print characters and perform functions responsively to said applied digital codes; said recording apparatus comprising storage means for storing a plurality of information character and function codes; said buffer memory comprising a multi-cell storage register for storing a plurality of said digital codes, first code transferring means for transferring digital codes in either direction between said typewriter and said register, second code transferring means for transferring digital codes in either direction between said recording apparatus and said register; said data transfer means also including data transfer operating means for operating said buffer memory and said code transferring means in a first mode enabling transfer of codes generated in response to operation of said keys from said printer to said recording apparatus via said register or a second mode enabling transfer of codes from said recording apparatus to said playback typewriter operating means via said register, and mode control means for selectively enabling said data transfer operating means to operate said buffer memory and said code transferring means in either of said modes; said automatic programming means comprising counter means for counting the number of digital codes generated by operation of said Tab key at the beginning of the first line of an indented paragraph that is being typed and for holding said count during the typing of subsequent lines of said indented paragraph, means responsive to operation of said Return key while said data transfer operating means is enabled to operate said buffer memory and said data transfer means in said first mode for generating tab-forcing signals and applying said tab-forcing signals to said playback typewriter operating means so as to cause said printing means to be shifted a selected distance away from said left-hand margin position responsively to each such tab-forcing signal until the number of said tab-forcing signals so produced and applied equals the count in said counter, and means for clearing said counter means responsively to operation of said Return key at the conclusion of said indented paragraph.
 11. Apparatus according to claim 10 wherein said automatic programming means comprises means operative when said data transfer operating means is enabled to operate said buffer memory and said code transferring means in said second mode for incrementing said counter means responsively to application of digital tab codes to said playback typewriter operating means, means for causing said counter to hold said count, means responsive tO application of digital return code to said typewriter playback means from said recording apparatus via said buffer memory for generating tab-forcing signals equal in number to the count stored in said counter means and for applying said same tab-forcing signals to said playback typewriter operating means, and means operative to clear said counter means when the last digital code of said indented paragraph has been transferred from said recording apparatus to said playback typewriter operating means via said buffer memory.
 12. Apparatus according to claim 10 further including selectively operable means for causing said code generating means to generate a Required Return code when said Return key is operated, and further wherein said means for clearing said counter means is operative responsively only to the generation of a Required Return code.
 13. Apparatus according to claim 11 further including selectively operable means for causing said coe generating means to generate a Required Return code when said Return key is operated, and further wherein said means for clearing said counter means when said data transfer means is enabled to operate said buffer memory and said code transferring means in either of said modes comprises means operative responsively to the generation of a Required Return code by operation of said Return key or the transfer of a Required Return code to said playback typewriter operating means from said recording apparatus via said buffer memory.
 14. Apparatus according to claim 13 wherein said selectively operable means for causing said code generating means to generate a Required Return code comprises a Shift key on said typewriter and means operable responsively to operation of said Shift key for generating a code modifying signal.
 15. Apparatus according to claim 12 wherein said counter means is adapted to count only Required Tab codes and said automatic programming means comprises selectively operable means for causing said code generating means to generate a Required Tab code when said Tab key is operated.
 16. Apparatus according to claim 10 including selectively operable skip means for preventing transfer of tab codes from said storage means to said playback typewriter operating means when said data transfer operating means is enabled to operate said buffer memory and said code transferring means in said second mode.
 17. Apparatus according to claim 16 further including means for inhibiting generation of tab-forcing signals when said skip means is operated.
 18. Apparatus according to claim 16 further including means for inhibiting clearing of said counter means when said skip means is operated.
 19. Apparatus according to claim 11 further including selectively operable means for inhibiting application of a Tab code to said storage means when said tab key is operated.
 20. Apparatus according to claim 19 wherein said means for inhibiting application of a Tab code to said storage means is operative only when said data transferring means is enabled to operate said buffer memory and said code transferring means in said second mode.
 21. A word processing system comprising a typewriter, a recording apparatus, data transfer means including a buffer memory for controlling the transfer of data between said typewriter and said recording apparatus, and means for automatically programming said typewriter for tabbing so as to provide a predetermined indented paragraph format; said typewriter including a holder for a record medium, printing means moveable relative to said holder, means for indexing said holder, a plurality of informational character and function keys including a Return key and a Tab key, character operator means responsive to operation of said informational character keys for operating said printing means to print selected characters in a line extending transversely of said printing medium, function operator means responsive to operation of said function keyS for performing functions corresponding to the function keys that are operated, said function keys including a Return key and a Tab key, and said function operator means including (a) return function means responsive to operation of said Return key for returning said printing means to a predetermined left hand margin position and operating said indexing means so that subsequent operation of said informational character keys will cause said printing means to print a new line of characters and (b) tabfunction means responsive to operation of said Tab key for causing said printing means to shift transversely of said holder away from said left hand margin position a preselected distance each time said Tab key is operated, means responsive to operation of said keys for generating codes representative of characters and functions corresponding to the keys that are operated, and playback typewriter operating means responsive to informational character and function codes applied thereto for causing said typewriter to print characters and perform functions according to said applied codes; said recording apparatus comprising storage means for storing a plurality of informational character and function codes; said buffer memory comprising a multi-cell storage register for storing a plurality of said codes, first code transferring means for transferring codes in either direction between said typewriter and said register, second code transferring means for transferring codes in either direction between said recording apparatus and said register; said data transfer means also including data transfer operating means for operating said buffer memory and said code transferring means in a first mode enabling transfer of codes generated in response to operation of said keys from said printer to said recording apparatus via said register or a second mode enabling transfer of codes from said recording apparatus to said playback typewriter operating means via said register, mode control means for selectively enabling said data transfer operating means to operate said buffer memory and said code transferring means in either of said modes, and means for recycling said buffer memory so that the beginning of a recorded line of characters is advanced to the output of said buffer memory; said automatic programming means comprising counter means for counting the number of codes generated by operation of said Tab key at the beginning of the first line of an indented paragraph that is being typed and for holding said count during the typing of subsequent lines of said indented paragraph, means responsive to operation of said Return key while said data transfer operating means is enabled to operate said buffer memory and said data transfer means in said first mode for generating tab-forcing signals equal in number to the count stored in said counter means and for applying said tab-forcing signals to said playback typewriter operating means so as to cause said printing means to be shifted a selected distance away from said left hand margin position responsively to each such tab-forcing signal, means for clearing said counter means responsively to operation of said Return key at the conclusion of said indented paragraph, means operative when said data transfer operating means is enabled to operate said buffer memory and said code transferring means in said second mode for incrementing said counter means responsively to application of tab function codes to said playback typewriter operating means, means for causing said counter to hold said count, means responsive to application of a return function code to said typewriter playback means from said recording apparatus via said buffer memory for generating tab-forcing signals equal in number to the count stored in said counter means and for applying said same tab-forcing signals to said playback typewriter operating means so as to cause said printing means to shift away from said left-hand margin position a selected distance respoNsively to each such tab-forcing signal, means operative to clear said counter when the last code of said indented paragraph has been transferred from said recording apparatus to said playback typewriter operating means via said buffer memory, and means for clearing said counter when said buffer memory is recycled to the beginning of a recorded line.
 22. Apparatus according to claim 21 further including means for searching said storage means to find a desired recorded line of characters, and means for clearing said counter whenever said storage means is being searched.
 23. Apparatus according to claim 3 including selectively operable skip means for preventing transfer of tab codes from said storage means to said playback typewriter operating means when said data transfer means is enabled to apply codes from said storage means to said playback typewriter operating means, and means for inhibiting incrementing of said Required Tab counter whenever a tab code is skipped.
 24. Apparatus according to claim 3 including means for searching said storage means to find a desired recorded line of characters, and means for clearing said counter whenever said storage means is being searched.
 25. Apparatus according to claim 1 wherein the said means in said playback printer operating means which is responsive to previously generated character and function codes comprises a decoder for decoding character and function codes transferred from said storage means to said playback printer operating means, and further wherein said tab-forcing signals applied to said playback printer operator means bypass said decoder.
 26. Apparatus according to claim 1 wherein said indented paragraph programming and control means comprises a second tab counter adapted to be incremented responsively to execution of a tab function by said printer, means for clearing said second counter responsively to execution of a return function by said printer, and means for comparing the count in said Required Tab counter and said second counter and for producing an output signal so long as the count in said required tab counter exceeds the count in said second counter, said means for producing and applying tab-forcing signals to said playback priner operating means being responsive to the output signal produced by said comparing means. 